#pragma once
#include <hash_map>
#include <string>

#include "Recurso.h"

using namespace std;

#define TIEMPO_ELIMINACION 5000.f

namespace RECURSOS{
	enum tipoFichero{
		NULO,
		SONIDO,
		MUSICA,
		TEXTURA
	};
}

class ResourceManager
	{
	private:
		hash_map<string,Recurso*> recursos;
	public:
		ResourceManager(void);
		Recurso *getResource(string & ruta, RECURSOS::tipoFichero tipo);
		void update(float tiempoJuego);
		~ResourceManager(void);
		void addRecurso(Recurso *r);
	private:
		string *getRoute(RECURSOS::tipoFichero tipo);

		Recurso* cargarSonido(string & nombre);
		Recurso* cargarMusica(string & nombre);
		Recurso* cargarTextura(string & nombre);

	};
